package cloud.maque.admin.domain.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author 4color
 * @description 菜单表
 * @date 2023-03-17
 */
@Data
public class MqMenu implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.ASSIGN_ID)
    /**
     * menu_id
     */
    private String menuId;

    /**
     * 菜单名称
     */
    @TableField(updateStrategy = FieldStrategy.NOT_NULL, insertStrategy = FieldStrategy.NOT_NULL)
    private String menuName;

    /**
     * 排序
     */
    private Integer menuOrder;


    /**
     * 地址
     */
    private String menuPath;

    /**
     * 菜单类型：spa,或 html ，当为空时，默认为spa
     */
    private String menuUrlType;

    /**
     * 打开方式(vue，window)
     */
    private String openType;

    /**
     * 打开目标
     */
    private String target;

    /**
     * 菜单类型：folder，menu，button
     */
    private String menuType;

    /**
     * 默认图标
     */
    private String icon;

    /**
     * 鼠标移动图标
     */
    private String iconMouseover;

    /**
     * 禁用
     */
    private Integer disabled;

    /**
     * 是否隐藏
     */
    private Integer hiddened;

    /**
     * create_at
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createAt;

    /**
     * update_at
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateAt;

    /**
     * 租户id
     */
    @TableField(updateStrategy = FieldStrategy.NOT_NULL, insertStrategy = FieldStrategy.NOT_NULL)
    private String tenantId;

    /**
     * 父菜单
     */
    private String parentId;

    public MqMenu() {
    }
}
